<%@ taglib uri="http://jakarta.apache.org/struts/tags-tiles" prefix="tiles" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://rssl.com/tags" prefix="func" %>

<tiles:importAttribute/>
<%--
Как работает кнопка.
- При нажатии на кнопку вызывается validationFunction (если установлена)
- Если валидация прошла успешно показывается confirmText (если установлен)
- Если пользователь подтвердил выполнение команды на сервер отправляется запрос

	bundle              	- bundle в котором ищутся текст для commandKey и commandHelpKey
	commandKey          	- ключ команды
	commandHelpKey      	- ключ для описания команды
	commandTextKey      	- ключ для заголовка команды
	image              	 	- название файла с картинкой
							  !!!Для buttonMenu ${globalUrl} и ${skinUrl} не подтягивается, но там картинки и не нужны todo: проверить со скинами
	validationFunction  	- функция валидации
	confirmText         	- текст подтверждения выполнения команды
	default             	- true/false кнопка по умолчанию (ее действие выполняется по нажатию Enter)
	postbackNavigation  	- при переходе по ссылкам (в левом меню) будет выполнятся действие этой кнопки
	width					- ширина кнопки, если не указана определяется размером кнопки
    autoRefresh             - true/false необходимость автоматического обновления страницы через минуту после нажатия на кнопку
    viewType                - тип отображения кнопки. Возможные значения: buttonGreen, buttonGrey, simpleLink, boldLink, LoginButton, icon. По умолчанию buttonGreen.
    enabled                 - активна ли кнопка (true - кнопка активна, false - не активна, при нажатии ничего не происходит)
    action                  - экщен на который надо постить данные
    noPreLoader             - true - не надо отображать прелоадер после нажатия
--%>


<c:set var="commandText"><bean:message key="${commandKey}" bundle="${bundle}"/></c:set>
<c:set var="commandHelp"><bean:message key="${commandHelpKey}" bundle="${bundle}"/></c:set>
<c:set var="globalImagePath" value="${globalUrl}/images"/>
<c:set var="imagePath" value="${skinUrl}/images"/>

<script type="text/javascript">
	var button = createCommandButton('${commandKey}', '${commandText}');
	<c:if test="${default}">setDefaultCommandButon(button);</c:if>
	<c:if test="${postbackNavigation}">setPostbackNavigationButton(button);</c:if>
	<c:if test="${not empty validationFunction}">button.setValidationFunction(function(){var r=${validationFunction};return r;});</c:if>
	<c:if test="${not empty confirmText}">button.setConfirmText('${confirmText}');</c:if>
	<c:if test="${not empty autoRefresh}">button.setAutoRefresh(${autoRefresh});</c:if>
</script>


    <c:set var="onClickAction"/>
    <c:if test="${enabled}">
        <c:set var="onClickAction">findCommandButton('${commandKey}').click('', ${noPreLoader})</c:set>
        <c:if test="${action!=''}">
            <c:set var="actionUrl" value="${func:calculateActionURL(pageContext,action)}"/>
            <c:set var="onClickAction">changeFormAction('${actionUrl}');  ${onClickAction}</c:set>
        </c:if>
    </c:if>

        <c:choose>
            <c:when test="${viewType == 'icon'}">
                <img src="${imagePath}/${image}" alt="${commandHelp}" title="${commandText}"
                     class="iconButton" onclick="${onClickAction}"/>
            </c:when>
        </c:choose>
